package org.xx.armory.objectparser;

/**
 * 从源文件中得到的解析对象。
 *
 * @author Haart
 */
public abstract class ParsedObject {
    private final LineInfo lineInfo;

    /**
     * 构造解析对象。
     *
     * @param lineInfo
     *         源文件中的位置信息。
     */
    protected ParsedObject(
            LineInfo lineInfo
    ) {
        this.lineInfo = lineInfo == null ? new LineInfo("?", 0, 0) : lineInfo;
    }

    /**
     * 获取源文件中的位置信息。
     *
     * @return 源文件中的位置信息。
     */
    public final LineInfo getLineInfo() {
        return this.lineInfo;
    }
}
